import { createRouter, createWebHistory } from 'vue-router'
import HomeView from '../views/HomeView.vue'

const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/',
      name: 'home',
      component: HomeView,
    },
    {
      path: '/about',
      name: 'about',
      // route level code-splitting
      // this generates a separate chunk (About.[hash].js) for this route
      // which is lazy-loaded when the route is visited.
      component: () => import('../views/AboutView.vue'),
    },
    {
      path: '/kanban',
      name: 'kanban',
      component: () => import('../views/KanbanView.vue')
    },
    {
      path: '/sql-editor',
      name: 'sql-editor',
      component: () => import('../views/SqlEditorView.vue')
    },
    {
      path: '/pivot-table',
      name: 'pivot-table',
      component: () => import('../views/PivotTableView.vue')
    },
    {
      path: '/bpmn-editor',
      name: 'bpmn-editor',
      component: () => import('../views/BpmnEditorView.vue')
    },
    {
      path: '/ai-chat',
      name: 'ai-chat',
      component: () => import('../views/AIChatView.vue')
    },
    {
      path: '/code-editor',
      name: 'code-editor',
      component: () => import('../views/CodeEditorView.vue')
    },
    {
      path: '/project',
      name: 'project',
      component: () => import('../views/ProjectView.vue')
    },
    {
      path: '/workflow',
      name: 'WorkflowManager',
      component: () => import('../components/WorkflowManager.vue'),
    },
    {
      path: '/knowledge-bases',
      name: 'knowledge-bases',
      component: () => import('../components/KnowledgeBaseList.vue')
    },
    {
      path: '/candy-crush',
      name: 'CandyCrush',
      component: () => import('../views/CandyCrush.vue')
    },
    {
      path: '/games/2048',
      name: 'Game2048',
      component: () => import('../views/games/Game2048.vue')
    },
    {
      path: '/games/clash',
      name: 'ClashOfClans',
      component: () => import('../views/games/ClashOfClans.vue')
    },
    {
      path: '/games/snake-battle',
      name: 'SnakeBattle',
      component: () => import('../views/games/SnakeBattle.vue')
    },
    {
      path: '/games/jump',
      name: 'JumpGame',
      component: () => import('../views/games/JumpGame.vue')
    },
    {
      path: '/games/space-battle',
      name: 'SpaceBattle',
      component: () => import('../views/games/SpaceBattle.vue')
    },
    {
      path: '/login',
      name: 'login',
      component:  import('../views/LoginView.vue')
    },
    {
      path: '/heart-beat',
      name: 'heartBeat',
      component: () => import('../views/HeartBeat.vue')
    },
    {
      path: '/floating-hearts',
      name: 'floatingHearts',
      component: () => import('../views/FloatingHearts.vue')
    },
    {
      path: '/spinning-heart',
      name: 'spinningHeart',
      component: () => import('../views/SpinningHeart.vue')
    }
  ],
})

export default router
